<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, user-scalable=no">
  <meta name="description" content="API docs for the Uri constructor from the Class Uri class from the dart:core library, for the Dart programming language.">
  <title>Uri constructor - Uri class - dart:core library - Dart API</title>
  <!-- required because all the links are pseudo-absolute -->
  <base href="../..">

  <link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:500,400i,400,300|Source+Sans+Pro:400,300,700" rel="stylesheet">
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
  <link rel="stylesheet" href="static-assets/github.css">
  <link rel="stylesheet" href="static-assets/styles.css">
  <link rel="icon" href="static-assets/favicon.png">
  
</head>

<body>

<div id="overlay-under-drawer"></div>

<header id="title">
  <button id="sidenav-left-toggle" type="button">&nbsp;</button>
  <ol class="breadcrumbs gt-separated dark hidden-xs">
    <li><a href="index.html">manage_calendar_events</a></li>
    <li><a href="dart-core/dart-core-library.html">dart:core</a></li>
    <li><a href="dart-core/Uri-class.html">Uri</a></li>
    <li class="self-crumb">Uri factory constructor</li>
  </ol>
  <div class="self-name">Uri</div>
  <form class="search navbar-right" role="search">
    <input type="text" id="search-box" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
  </form>
</header>

<main>

  <div id="dartdoc-sidebar-left" class="col-xs-6 col-sm-3 col-md-2 sidebar sidebar-offcanvas-left">
    <header id="header-search-sidebar" class="hidden-l">
      <form class="search-sidebar" role="search">
        <input type="text" id="search-sidebar" autocomplete="off" disabled class="form-control typeahead" placeholder="Loading search...">
      </form>
    </header>
    
    <ol class="breadcrumbs gt-separated dark hidden-l" id="sidebar-nav">
      <li><a href="index.html">manage_calendar_events</a></li>
      <li><a href="dart-core/dart-core-library.html">dart:core</a></li>
      <li><a href="dart-core/Uri-class.html">Uri</a></li>
      <li class="self-crumb">Uri factory constructor</li>
    </ol>
    
    <h5>Uri class</h5>
    <ol>
      <li class="section-title"><a href="dart-core/Uri-class.html#constructors">Constructors</a></li>
      <li><a href="dart-core/Uri/Uri.html">Uri</a></li>
      <li><a href="dart-core/Uri/Uri.dataFromBytes.html">dataFromBytes</a></li>
      <li><a href="dart-core/Uri/Uri.dataFromString.html">dataFromString</a></li>
      <li><a href="dart-core/Uri/Uri.directory.html">directory</a></li>
      <li><a href="dart-core/Uri/Uri.file.html">file</a></li>
      <li><a href="dart-core/Uri/Uri.http.html">http</a></li>
      <li><a href="dart-core/Uri/Uri.https.html">https</a></li>
    
      <li class="section-title">
        <a href="dart-core/Uri-class.html#instance-properties">Properties</a>
      </li>
      <li><a href="dart-core/Uri/authority.html">authority</a></li>
      <li><a href="dart-core/Uri/data.html">data</a></li>
      <li><a href="dart-core/Uri/fragment.html">fragment</a></li>
      <li><a href="dart-core/Uri/hasAbsolutePath.html">hasAbsolutePath</a></li>
      <li><a href="dart-core/Uri/hasAuthority.html">hasAuthority</a></li>
      <li><a href="dart-core/Uri/hasEmptyPath.html">hasEmptyPath</a></li>
      <li><a href="dart-core/Uri/hasFragment.html">hasFragment</a></li>
      <li><a href="dart-core/Uri/hashCode.html">hashCode</a></li>
      <li><a href="dart-core/Uri/hasPort.html">hasPort</a></li>
      <li><a href="dart-core/Uri/hasQuery.html">hasQuery</a></li>
      <li><a href="dart-core/Uri/hasScheme.html">hasScheme</a></li>
      <li><a href="dart-core/Uri/host.html">host</a></li>
      <li><a href="dart-core/Uri/isAbsolute.html">isAbsolute</a></li>
      <li><a href="dart-core/Uri/origin.html">origin</a></li>
      <li><a href="dart-core/Uri/path.html">path</a></li>
      <li><a href="dart-core/Uri/pathSegments.html">pathSegments</a></li>
      <li><a href="dart-core/Uri/port.html">port</a></li>
      <li><a href="dart-core/Uri/query.html">query</a></li>
      <li><a href="dart-core/Uri/queryParameters.html">queryParameters</a></li>
      <li><a href="dart-core/Uri/queryParametersAll.html">queryParametersAll</a></li>
      <li><a href="dart-core/Uri/scheme.html">scheme</a></li>
      <li><a href="dart-core/Uri/userInfo.html">userInfo</a></li>
      <li class="inherited"><a href="dart-core/Object/runtimeType.html">runtimeType</a></li>
    
      <li class="section-title"><a href="dart-core/Uri-class.html#instance-methods">Methods</a></li>
      <li><a href="dart-core/Uri/isScheme.html">isScheme</a></li>
      <li><a href="dart-core/Uri/normalizePath.html">normalizePath</a></li>
      <li><a href="dart-core/Uri/removeFragment.html">removeFragment</a></li>
      <li><a href="dart-core/Uri/replace.html">replace</a></li>
      <li><a href="dart-core/Uri/resolve.html">resolve</a></li>
      <li><a href="dart-core/Uri/resolveUri.html">resolveUri</a></li>
      <li><a href="dart-core/Uri/toFilePath.html">toFilePath</a></li>
      <li><a href="dart-core/Uri/toString.html">toString</a></li>
      <li class="inherited"><a href="dart-core/Object/noSuchMethod.html">noSuchMethod</a></li>
    
      <li class="section-title"><a href="dart-core/Uri-class.html#operators">Operators</a></li>
      <li><a href="dart-core/Uri/operator_equals.html">operator ==</a></li>
    
      <li class="section-title"><a href="dart-core/Uri-class.html#static-properties">Static properties</a></li>
      <li><a href="dart-core/Uri/base.html">base</a></li>
    
      <li class="section-title"><a href="dart-core/Uri-class.html#static-methods">Static methods</a></li>
      <li><a href="dart-core/Uri/decodeComponent.html">decodeComponent</a></li>
      <li><a href="dart-core/Uri/decodeFull.html">decodeFull</a></li>
      <li><a href="dart-core/Uri/decodeQueryComponent.html">decodeQueryComponent</a></li>
      <li><a href="dart-core/Uri/encodeComponent.html">encodeComponent</a></li>
      <li><a href="dart-core/Uri/encodeFull.html">encodeFull</a></li>
      <li><a href="dart-core/Uri/encodeQueryComponent.html">encodeQueryComponent</a></li>
      <li><a href="dart-core/Uri/parse.html">parse</a></li>
      <li><a href="dart-core/Uri/parseIPv4Address.html">parseIPv4Address</a></li>
      <li><a href="dart-core/Uri/parseIPv6Address.html">parseIPv6Address</a></li>
      <li><a href="dart-core/Uri/splitQueryString.html">splitQueryString</a></li>
      <li><a href="dart-core/Uri/tryParse.html">tryParse</a></li>
    
    </ol>
  </div><!--/.sidebar-offcanvas-left-->

  <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
      <div><h1><span class="kind-constructor">Uri</span> constructor</h1></div>

    <section class="multi-line-signature">
      
      <span class="name ">Uri</span>(<wbr>{<span class="parameter" id="-param-scheme"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">scheme</span>, </span> <span class="parameter" id="-param-userInfo"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">userInfo</span>, </span> <span class="parameter" id="-param-host"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">host</span>, </span> <span class="parameter" id="-param-port"><span class="type-annotation"><a href="dart-core/int-class.html">int</a></span> <span class="parameter-name">port</span>, </span> <span class="parameter" id="-param-path"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">path</span>, </span> <span class="parameter" id="-param-pathSegments"><span class="type-annotation"><a href="dart-core/Iterable-class.html">Iterable</a><span class="signature">&lt;<wbr><span class="type-parameter"><a href="dart-core/String-class.html">String</a></span>&gt;</span></span> <span class="parameter-name">pathSegments</span>, </span> <span class="parameter" id="-param-query"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">query</span>, </span> <span class="parameter" id="-param-queryParameters"><span class="type-annotation"><a href="dart-core/Map-class.html">Map</a><span class="signature">&lt;<wbr><span class="type-parameter"><a href="dart-core/String-class.html">String</a></span>, <span class="type-parameter">dynamic</span>&gt;</span></span> <span class="parameter-name">queryParameters</span>, </span> <span class="parameter" id="-param-fragment"><span class="type-annotation"><a href="dart-core/String-class.html">String</a></span> <span class="parameter-name">fragment</span></span> })
    </section>

    <section class="desc markdown">
      <p>Creates a new URI from its components.</p>
<p>Each component is set through a named argument. Any number of
components can be provided. The <code>path</code> and <code>query</code> components can be set
using either of two different named arguments.</p>
<p>The scheme component is set through <code>scheme</code>. The scheme is
normalized to all lowercase letters. If the scheme is omitted or empty,
the URI will not have a scheme part.</p>
<p>The user info part of the authority component is set through
<code>userInfo</code>. It defaults to the empty string, which will be omitted
from the string representation of the URI.</p>
<p>The host part of the authority component is set through
<code>host</code>. The host can either be a hostname, an IPv4 address or an
IPv6 address, contained in '<code>' and '</code>'. If the host contains a
':' character, the '<code>' and '</code>' are added if not already provided.
The host is normalized to all lowercase letters.</p>
<p>The port part of the authority component is set through
<code>port</code>.
If <code>port</code> is omitted or <code>null</code>, it implies the default port for
the URI's scheme, and is equivalent to passing that port explicitly.
The recognized schemes, and their default ports, are "http" (80) and
"https" (443). All other schemes are considered as having zero as the
default port.</p>
<p>If any of <code>userInfo</code>, <code>host</code> or <code>port</code> are provided,
the URI has an authority according to <a href="dart-core/Uri/hasAuthority.html">hasAuthority</a>.</p>
<p>The path component is set through either <code>path</code> or
<code>pathSegments</code>.
When <code>path</code> is used, it should be a valid URI path,
but invalid characters, except the general delimiters ':/@[]?#',
will be escaped if necessary.
When <code>pathSegments</code> is used, each of the provided segments
is first percent-encoded and then joined using the forward slash
separator.</p>
<p>The percent-encoding of the path segments encodes all
characters except for the unreserved characters and the following
list of characters: <code>!$&amp;'()*+,;=:@</code>. If the other components
necessitate an absolute path, a leading slash <code>/</code> is prepended if
not already there.</p>
<p>The query component is set through either <code>query</code> or <code>queryParameters</code>.
When <code>query</code> is used, the provided string should be a valid URI query,
but invalid characters, other than general delimiters,
will be escaped if necessary.
When <code>queryParameters</code> is used the query is built from the
provided map. Each key and value in the map is percent-encoded
and joined using equal and ampersand characters.
A value in the map must be either a string, or an <a href="dart-core/Iterable-class.html">Iterable</a> of strings,
where the latter corresponds to multiple values for the same key.</p>
<p>The percent-encoding of the keys and values encodes all characters
except for the unreserved characters, and replaces spaces with <code>+</code>.
If <code>query</code> is the empty string, it is equivalent to omitting it.
To have an actual empty query part,
use an empty map for <code>queryParameters</code>.</p>
<p>If both <code>query</code> and <code>queryParameters</code> are omitted or <code>null</code>,
the URI has no query part.</p>
<p>The fragment component is set through <code>fragment</code>.
It should be a valid URI fragment, but invalid characters other than
general delimiters, are escaped if necessary.
If <code>fragment</code> is omitted or <code>null</code>, the URI has no fragment part.</p>
    </section>
    
    <section class="summary source-code" id="source">
      <h2><span>Implementation</span></h2>
      <pre class="language-dart"><code class="language-dart">factory Uri(
    {String scheme,
    String userInfo,
    String host,
    int port,
    String path,
    Iterable&lt;String&gt; pathSegments,
    String query,
    Map&lt;String, dynamic &#47;*String|Iterable&lt;String&gt;*&#47; &gt; queryParameters,
    String fragment}) = _Uri;</code></pre>
    </section>

  </div> <!-- /.main-content -->

  <div id="dartdoc-sidebar-right" class="col-xs-6 col-sm-6 col-md-2 sidebar sidebar-offcanvas-right">
  </div><!--/.sidebar-offcanvas-->

</main>

<footer>
  <span class="no-break">
    manage_calendar_events 1.0.1
  </span>

  
</footer>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="static-assets/typeahead.bundle.min.js"></script>
<script src="static-assets/highlight.pack.js"></script>
<script src="static-assets/URI.js"></script>
<script src="static-assets/script.js"></script>


</body>

</html>
